#!/usr/bin/env python
# -*- encoding: utf-8 -*-

"""
文件名: 数值类型.py    
内容:
数值: 数值的表现形式:
        整数: int
            二进制:0b   只包含0 1
            八进制:0 / 0o
            十进制:
            十六进制:0x     包含0123456789abcdef

        浮点数: float
            整数部分+小数部分 168.2
            可以用科学计数法表示 1.682*10^2   1.682e2
        复数: complex
            由实数和虚数组成  a+bj
            complex(a,b)
            a,b都是浮点数
    注意:python3的整型,可以自动调节大小,也就是没有long这种类型
        分正负 -6 不等于 6
"""

num = 0b111
print(num)

num1 = 0o111
print(num1)

num2 = 0x145a
print(num2)

num3 = 1.68e4
print(num3)

num4 = complex(1.2,3.4)
print(num4)


# python 万物皆对象
# 十进制转换成二进制
num5 = 7
print(bin(num5))

# 十进制转换成八进制
num6 = 73
print(oct(num6))

# 十进制转换成十六进制
num7 = 5210
print(hex(num7))


"""
    python中数学函数的使用:
        内建函数:
            abs() 绝对值
            max(num1,num2,....)   取最大值
            min(...)              取最小值
            round(num[,n])   四舍五入
                                    , n
                                    表示四舍五入的位数,可以省略不写
            pow(x,y)   返回的x的y次幂  == x**y
        
        math模块函数:    
            ceil()     向上取整
            floor()     向下取整
            sqrt()     开平方
            log(x,y)     以y为底,x的对数
            导入外部模块:
                import <模块名>
"""
import math

print(math.sqrt(4))
print(math.ceil(120.1))
print(math.floor(120.9999999999))
print(math.log(100,10))

"""
随机函数
    random()
        [0,1) 范围内的随机小数
random方法也在其他模块中 random模块
"""
import random

print(random.random())

# choice(seq)
#  从一个序列(列表)中,随机选择一个数据
#       random.choice([0,1,2,3,4,5,6,7])

print(random.choice([0,1,2,3,4,5,6,7]))

# uniform(x,y)
#   [x,y]
#       之间的随机小数
#       random.uniform(3,5)

print(random.uniform(3,5))

# randint(x,y)
#   [x,y]
#       之间的随机整数

print(random.randint(1,100))




